
const express = require('express') 
const app = express() 
app.listen(3000,function(){
    console.log('http://localhost:3000')
});

const path = require('path')
const fs = require('fs')

/*
app.js有4个路由

get :  /student  浏览器中会显示  student.html  表单
get :  /teacher  浏览器中会显示  teacher.html  表单

get : /dostudent  实现注册  ： 是student.html的提交按钮跳转过来的
        数据保存到student.json
get : /doteacher  实现登录  ： 是teacher.html的提交按钮跳转过来的
        数据保存到teacher.json
*/ 

app.get('/student',(req,res)=>{
    //res.sendFile() 它需要一个绝对地址
    res.sendFile( path.join( __dirname,'views/student.html' ) )
})
app.get('/teacher',(req,res)=>{
    res.sendFile( path.join( __dirname,'views/teacher.html' ) )
})

app.get('/dostudent',(req,res)=>{

    // ? 的参数是查询字符串参数 ，使用req.query接收
     let stu = req.query

     //也要做一些数据判断 。
     //
     stu.xuehao = stu.xuehao.trim()
     if( stu.xuehao == ''){

        return res.send('学号不能为空')
     }


     let filepath = path.join( __dirname,'data/student.json' ) //把地址转换成绝对地址
    let students
    try {
         students = JSON.parse( fs.readFileSync( filepath,'utf-8' ) )
    } catch (error) {
         students = []
    }
    let index = students.findIndex(item=> item.xuehao == stu.xuehao) //判断学号是否重复
    if( index != -1 ){

        return res.send('学号重复，请换个学号')
    }

    students.push(stu )
    let result = JSON.stringify( students ) //转换成json

    
    fs.writeFileSync( filepath,result ) //写入字符串内容

    res.send('添加成功')
})


app.get('/doteacher',(req,res)=>{

    // ? 的参数是查询字符串参数 ，使用req.query接收
     let teach = req.query

     //也要做一些数据判断 。
     //
     teach.xuehao = teach.xuehao.trim()
     if( teach.xuehao == ''){

        return res.send('学号不能为空')
     }


     let filepath = path.join( __dirname,'data/teacher.json' ) //把地址转换成绝对地址
    let teachers
    try {
        teachers = JSON.parse( fs.readFileSync( filepath,'utf-8' ) )
    } catch (error) {
        teachers = []
    }
    let index = teachers.findIndex(item=> item.xuehao == teach.xuehao) //判断学号是否重复
    if( index != -1 ){

        return res.send('学号重复，请换个学号')
    }

    teachers.push(teach )
    let result = JSON.stringify( teachers ) //转换成json

    
    fs.writeFileSync( filepath,result ) //写入字符串内容

    res.send('添加成功')
})


